-
-
Notifications
You must be signed in to change notification settings - Fork 293
feat: Add deep link and launcher shortcut support for conversations #5664
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
feat: Add deep link and launcher shortcut support for conversations #5664
Conversation
- Add custom URI scheme (nctalk://conversation/{token}) for opening
conversations from external launchers like KISS
- Add HTTPS deep link support for /call/{token} URLs (fixes nextcloud#847)
- Add dynamic shortcuts for favorite/recent conversations
- Add "Add to home screen" menu option in conversation long-press dialog
- New DeepLinkHandler utility for parsing deep link URIs
- New ShortcutManagerHelper utility for managing conversation shortcuts
Signed-off-by: angrymuesli <[email protected]>
|
Thank you for the PR @angrymuesli |
|
Hello there, We hope that the review process is going smooth and is helpful for you. We want to ensure your pull request is reviewed to your satisfaction. If you have a moment, our community management team would very much appreciate your feedback on your experience with this PR review process. Your feedback is valuable to us as we continuously strive to improve our community developer experience. Please take a moment to complete our short survey by clicking on the following link: https://cloud.nextcloud.com/apps/forms/s/i9Ago4EQRZ7TWxjfmeEpPkf6 Thank you for contributing to Nextcloud and we hope to hear from you soon! (If you believe you should not receive this message, you can add yourself to the blocklist.) |
|
@angrymuesli - I tested this PR, shortcut support for conversations work well. Opening Talk links from different domains and launching conversations via the external KISS launcher works only on Android 12 and earlier devices but not on Android 12+ devices. Deep links only work if the domain is registered via assetlinks.json. Talk is a self-hosted and can run on many different domains, it is not feasible for us to register and verify all possible domains. As a result, automatically opening Talk links from different domains in the app on Android 12+ devices is practically not implementable. |
| <data android:scheme="https" /> | ||
| <data android:host="*" /> | ||
| <data android:pathPrefix="/index.php/call/" /> | ||
| </intent-filter> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The intent filter for opening talk conversation links can be removed because it does not work for Android 12+ devices.
|
To resolve linter issues, please run ./gradlew ktlintFormat There are also some static code analysis issues, see https://app.codacy.com/gh/nextcloud/talk-android/pull-requests/5664/issues. Please feel free to fix them, or let us know if you want us to handle them. |
Hi, and thanks for the feedback! Not all of that is true. I installed a debug build based on the latest changes on my Pixel 6a running GrapheneOS (Android 16), and I could easily access Talk conversations in KISS by typing a few letters of the conversation name. Did you mean something else? |
Sure, I'll run the linter and address the static code analysis issues. Thanks for pointing these out. |
Talk conversations could be accessed on KISS launcher, however i noticed a issue - When I try to access a conversation, sometimes a different conversation opens, sometimes the requested conversation opens and sometimes it just opens the conversations list. Please see the below video and I used single account for testing purpose. bug.in.opening.conversation.with.launcher.movAdditionally, the other thing, that does not work is opening different domain talk links on the talk app, it redirects to web browser instead of app for Android 12+ devices. |
🖼️ Screenshots
🚧 TODO
🏁 Checklist
/backport to stable-xx.x